import {
  useIntervalFn
} from '@vueuse/core'
import {
  ref,
  onUnmounted
} from 'vue'
// 倒计时功能
export const useInterVal = (limitTime: number = 60) => {
  // 倒计时数字初始值
  const time = ref(0)
  // pause 暂停 resume 开始
  // useIntervalFn(回调函数,执行间隔,是否立即开启)
  const {
    pause,
    resume
  } = useIntervalFn(() => {
    // 里面实现倒计时
    time.value--
    if (time.value <= 0) {
      pause()
    }
  }, 1000)
  onUnmounted(() => {
    pause()
  })
  // 开启倒计时功能
  const start = () => {
    time.value = limitTime
    resume()
  }
  // 对外提供倒计时时间和开启倒计时函数
  return {
    time,
    start
  }
}